1. Field of the Invention
The present invention relates to the production of pulse width modulation effects in a digital tone synthesizer.
2. Description of the Prior Art
The inventor's Computor Organ described in U.S. Pat. No. 3,809,786 produces musical notes by computing the amplitudes at successive points of a complex waveshape and converting these amplitudes to notes as the computations are carried out. A discrete Fourier algorithm is implemented to compute each amplitude from a stored set of harmonic coefficients c.sub.q and a selected frequency number R, generally a non-integer, establishing the waveshape period. The computations, preferably digital, occur at regular time intervals t independent of the waveshape period. At each interval t the number R is added to the contents of a harmonic interval adder to specify the waveshape sample point gR, where g=1,2,3, . . . . For each point gR, W individual harmonic component values c.sub.q sin(.pi.qgR/W) are calculated, where q=1,2,3, . . . ,W. These values are algebraically summed to obtain the instantaneous waveshape amplitude, which is supplied to a digital-to-analog convertor and a sound system for reproduction of the generated musical note. In a polyphonic musical instrument system, time sharing and multiplexing is used to calculate separately the sample amplitudes for each selected note, these amplitudes being combined by summation to produce the desired ensemble of a musical sound.
Deutsch et al in patent application Ser. No. 603,776, filed Aug. 11, 1975, and commonly assigned with this application describes a Polyphonic Tone Synthesizer wherein a computation cycle and data transfer cycle are repetitively and independently implemented to provide data which is converted to musical notes. During the computation cycle a master data set is created by implementing a discrete generalized Fourier algorithm using a stored set of harmonic coefficients which characterize the basic musical tone. The computations are carried out at a fast rate which is usually nonsynchronous with any musical frequency. Preferably, the harmonic coefficients and the orthogonal functions are stored in digital form, and the computations are carried out digitally. At the end of the computation cycle a master data set has been created and is temporarily stored in a data register.
Following a computation cycle, a transfer cycle is initiated which transfers the master data set to a multiplicity of read-write memories. The transfer for each memory is initiated by detection of a synchronizing bit and is timed by a clock which may be asynchronous with the main system clock and has a frequency Pf, where f is the frequency of a particular note assigned to a memory and P is two times the maximum number of harmonics in the musical waveshape. The transfer cycle is completed when all the memories have been loaded, at which time a new computation cycle is initiated. Tone generation continues uninterrupted during computation and transfer cycles.
While digital tone generators of the kind described above operate by implementing a Fourier-type transformation from the frequency domain to the time domain, analog tone generators generally operate only in the time domain. For example, analog tone synthesizers are designed to produce a rectangular-like pulse train in which the pulse repetition rate establishes the fundamental frequency f of the produced note, and wherein the pulse shape and duty cycle determine the frequency spectral content of the tone.
To simulate pulse-type tone generation in a tone generator of the Computor Organ type described above, Deutsch in patent application Ser. No. 509,705, filed Sept. 26, 1974, and now U.S. Pat. No. 3,972,259 describes a means whereby harmonic coefficients are selected to correspond to the frequency transform of the pulse shape being simulated. Pulse-width modulation effects are achieved by storing a set of harmonic coefficients corresponding to a rectangular pulse-shape. The set of such coefficients is extended to an order m greater than the maximum number W of Fourier components used in the waveshape amplitude computation. A selected subset of the stored coefficients then is employed to establish relative amplitudes of the Fourier components used in the computation. Pulse width modulation tonal effects are achieved by varying this subset as a function of time. Amplitude scaling may be used to compensate for amplitude envelope changes resulting from utilization of different harmonic coefficient subsets. The same system is equally applicable to the Polyphonic Tone Synthesizer described previously.
An object of the present invention is to simulate pulse-type tone generation, both with and without pulse width modulation effects, in a tone synthesizer employing a Fourier-type transformation from harmonic coefficients to the time domain. Another object of the present invention is to implement modulation of the harmonic coefficients used to establish the pulse-like musical tonal characteristics.